package com.mzj.saas.mservice.wallet.entity;

import com.mzj.saas.mservice.sys.entity.IdEntity;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Table;
import java.util.Date;

/*
 *提现明细表
 */
@Entity
@Table(name = "saas_withdraw_record")
public class WithdrawRecord extends IdEntity {

	/**
	 * 企业id
	 */
	@Column(name = "org_id", nullable = false)
	private Long orgId;

	/**
	 * 钱包id
	 */
	@Column(name = "wallet_id", nullable = false)
	private Long walletId;

	/**
	 * 提现方式：1微信 2支付宝
	 */
	@Column(name = "type", nullable = false)
	private Integer type;

	/**
	 * 提现金额
	 */
	@Column(name = "withdraw_amount", nullable = false)
	private Integer withdrawAmount;

	/**
	 * 手续费
	 */
	@Column(name = "service_amount", nullable = false)
	private Integer serviceAmount;

	/**
	 * 转账费用
	 */
	@Column(name = "transfer_fee", nullable = false)
	private Integer transferFee;

	/**
	 * 实际到账金额
	 */
	@Column(name = "trans_amount", nullable = false)
	private Integer transAmount;

	/**
	 * 收款方名称
	 */
	@Column(name = "payee_name", nullable = false)
	private String payeeName;

	/**
	 * 收款方账户
	 */
	@Column(name = "payee_account", nullable = true)
	private String payeeAccount;

	/**
	 * 提现人操作人
	 */
	@Column(name = "operator_id", nullable = false)
	private String operatorId;

	/**
	 * 状态：0未执行 1成功 2失败
	 */
	@Column(name = "status", nullable = false)
	private Integer status;

	/**
	 * 提现时间
	 */
	@Column(name = "withdraw_time", nullable = true)
	private Date withdrawTime;

	/**
	 * 备注
	 */
	@Column(name = "remark", nullable = true)
	private String remark;

	public Long getWalletId() {
		return walletId;
	}

	public void setWalletId(Long walletId) {
		this.walletId = walletId;
	}

	public Integer getType() {
		return type;
	}

	public void setType(Integer type) {
		this.type = type;
	}

	public Integer getWithdrawAmount() {
		return withdrawAmount;
	}

	public void setWithdrawAmount(Integer withdrawAmount) {
		this.withdrawAmount = withdrawAmount;
	}

	public Integer getServiceAmount() {
		return serviceAmount;
	}

	public void setServiceAmount(Integer serviceAmount) {
		this.serviceAmount = serviceAmount;
	}

	public Integer getTransferFee() {
		return transferFee;
	}

	public void setTransferFee(Integer transferFee) {
		this.transferFee = transferFee;
	}

	public Integer getTransAmount() {
		return transAmount;
	}

	public void setTransAmount(Integer transAmount) {
		this.transAmount = transAmount;
	}

	public String getPayeeName() {
		return payeeName;
	}

	public void setPayeeName(String payeeName) {
		this.payeeName = payeeName;
	}

	public String getPayeeAccount() {
		return payeeAccount;
	}

	public void setPayeeAccount(String payeeAccount) {
		this.payeeAccount = payeeAccount;
	}

	public String getOperatorId() {
		return operatorId;
	}

	public void setOperatorId(String operatorId) {
		this.operatorId = operatorId;
	}

	public Integer getStatus() {
		return status;
	}

	public void setStatus(Integer status) {
		this.status = status;
	}

	public Date getWithdrawTime() {
		return withdrawTime;
	}

	public void setWithdrawTime(Date withdrawTime) {
		this.withdrawTime = withdrawTime;
	}

	public String getRemark() {
		return remark;
	}

	public void setRemark(String remark) {
		this.remark = remark;
	}

	public Long getOrgId() {
		return orgId;
	}

	public void setOrgId(Long orgId) {
		this.orgId = orgId;
	}

}
